package com.cyan.note.dto.manager.order;

import lombok.Data;
import java.math.BigDecimal;
import java.time.LocalDateTime;
import java.util.List;

/**
 * 订单列表DTO
 * 
 * @author ZhangzhenYu
 * @since 2025-01-15
 */
@Data
public class OrderListDTO {

    /**
     * 订单ID
     */
    private Long id;

    /**
     * 订单编号
     */
    private String orderNumber;

    /**
     * 订单类型
     */
    private String orderType;

    /**
     * 订单类型名称
     */
    private String orderTypeName;

    /**
     * 订单状态
     */
    private String status;

    /**
     * 订单状态名称
     */
    private String statusName;

    /**
     * 订单来源
     */
    private String orderSource;

    /**
     * 订单来源名称
     */
    private String orderSourceName;

    /**
     * 客户姓名
     */
    private String customerName;

    /**
     * 客户电话
     */
    private String customerPhone;

    /**
     * 服务名称
     */
    private String serviceName;

    /**
     * 订单金额
     */
    private BigDecimal orderAmount;

    /**
     * 实际金额
     */
    private BigDecimal actualAmount;

    /**
     * 服务时长（小时）
     */
    private Integer serviceDuration;

    /**
     * 开始时间
     */
    private LocalDateTime startTime;

    /**
     * 结束时间
     */
    private LocalDateTime endTime;

    /**
     * 创建时间
     */
    private LocalDateTime createdAt;

    /**
     * 分配的打手列表
     */
    private List<OrderWorkerInfo> workers;

    /**
     * 备注
     */
    private String remark;

    /**
     * 订单打手信息
     */
    @Data
    public static class OrderWorkerInfo {
        /**
         * 打手ID
         */
        private Long workerId;

        /**
         * 打手姓名
         */
        private String workerName;

        /**
         * 打手电话
         */
        private String workerPhone;

        /**
         * 分成金额
         */
        private BigDecimal commissionAmount;

        /**
         * 分成比例
         */
        private BigDecimal commissionRate;
    }
}